A computer virus is a parasitic computer executable code, that is capable of replicating and attaching itself to programs by writing itself on a storage medium. As of today, there are thousands of known viruses and all of them either attach themselves to files or to system booting programs of a hard disk or of a floppy diskette. Of the known viruses, the great majority are file infectors (they attach themselves to program files) and just one to two hundred are of the boot infector type. Thus, the major problem is to protect against file infecting viruses. Known exemplary types of such viruses include worms and Trojan horses.
A program may become infected by being exposed to an infected environment (a virus is present in the computer's memory), while attempting to execute the program. What actually happens is that the virus code writes a copy thereof onto the storage medium, which is then appended to the host program code.
There are several ways to protect computer programs from virus infection. A simple and passive protection method involves using “read-only” media such as CD-ROM (Compact Disk-Read Only Memory), or floppy disks that are write-protected. Many computer programs such as the circulated MS-DOS, Windows operating systems, are distributed on write-disabled floppy disks or CD-ROMs.
Unfortunately, not all programs can feasibly be protected utilizing read-only memory. This is especially the case in read/writable memory subsystems of computers which typically include hard drives and the like. Accordingly, there is thus a need for a memory scanning system capable of combating viruses and other hostile content in memory subsystems.
Still yet, prior art systems do not address the fact that virus and/or content scanning inherently use up a large proportion of system resources in the form of cycles in the central processing unit.